home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 8
/
FM Towns Free Software Collection 8.iso
/
t_os
/
edo
/
rex
/
tiffsave.bas
< prev
next >
Wrap
BASIC Source File
|
1994-06-01
|
1KB
|
21 lines
10 CLEAR ,,512,541072,68192:DEFINT A-Z:TL=4096:EGB=0
15 LOADM ".\egbcall.rex",EGB:LOADM "tiffsave.REX",TL:PRINT :PALF=1:SCM=1
20 DIM STACK%(32867),EGBWORK%(1000),GETREG&(10),PARA%(100),PALT%(1025),LBUF%(32867,1),SCMV%(2):A&=CALLM(EGB,0,VARPTR(STACK%(32867))+1,VARPTR(EGBWORK%(0)),1536)
25 SCMV%(0)=3:SCMV%(1)=10:SCMV%(2)=12:X0=0:Y1=0:X1=639:Y1=479:COMP=5
30 F$="b:\test4.tif"+CHR$(0):GW&=VARPTR(EGBWORK%(0)):GOSUB *SCMODE:F&=PEEK(VARPTR(F$),4):LOAD@ "h:\hhhh.tif"
40 IF PALF=1 THEN P&=VARPTR(PALT%(0)):CALLM TL,0,GW&,SCM,0,P& ELSE P&=0
50 A&=CALLM(TL,F&,X0,Y0,X1,Y1,32867,1024,VARPTR(LBUF%(0,0)),GW&,P&,COMP,SCM,0,0):PRINT A&:END
10000 *SCMODE
10010 AH=1:IF SCM<>2 THEN AL=1:EDX&=3:GOSUB *EGB '256モード以外はテキスト画面はモード3
10020 SCREEN@ SCM:EDX&=SCMV%(SCM):AL=0:GOSUB *EGB '解像度設定(AHは前行で設定済)
10030 IF SCM<>2 THEN AH=6:AL=1:EDX&=3:GOSUB *EGB '両ページ表示/手前をページ1に
10040 AH=5:AL=0:GOSUB *EGB '書き込みページを0(グラフィック画面)に
10050 IF SCM=1 THEN X1=319:Y1=239:PALF=0 ELSE X1=639:Y1=479
10060 RETURN
10090 *EGB 'EGB実行部(変数が破壊される事は無い)
10100 A&=CALLM(EGB,AH,AL,EBX&,ECX&,EDX&,ESI&,RET&)
10110 IF A&<>0 THEN BEEP:PRINT "EGBの実行に失敗しました":END
10120 RETURN
10130 PRINT HEX$(A&):FOR A=0 TO 17:PRINT CHR$(PEEK(A&+A));:NEXT:PRINT :FOR A=0 TO 17:PRINT CHR$(PEEK(F&+A));:NEXT:RETURN
10140 OPEN "I",#1,"h:\tiff\entrys.asm":FOR I=0 TO 256:PRINT INPUT$(1,1);:NEXT:CLOSE